home *** CD-ROM | disk | FTP | other *** search
-
- NOVELL TECHNICAL INFORMATION DOCUMENT
-
- TITLE: STREAMS, TLI, SPXS, IPXS NLM Update
- DOCUMENT ID: TID014113
- DOCUMENT REVISION: B
- DATE: 27JUL94
- ALERT STATUS: Yellow
- INFORMATION TYPE: Symptom Solution
- README FOR: STRTL3.EXE
-
- NOVELL PRODUCT and VERSION:
- NetWare 3.11
- NetWare 3.12
- NetWare 4.01
- NetWare SFT III 3.11
- NetWare Asynchronous Communication Services (NACS) 3.0
- NetWare for SAA 1.2
- NetWare for SAA 1.3
-
- ABSTRACT:
-
- STRTL3.EXE contains all the fixed and patches found in STRTL1.EXE and
- STRTL2.EXE plus some new fixes and patches to handle all SPX, TLI, and STREAMS
- communication and server problems. Symptom solution information for the
- current patches and a history of previous patches are included in this
- document.
-
- ------------------------------------------------------------------------------
- DISCLAIMER
- THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL. NOVELL
- MAKES EVERY EFFORT WITHIN ITS MEANS TO VERIFY THIS INFORMATION. HOWEVER, THE
- INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION ONLY. NOVELL
- MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION.
- ------------------------------------------------------------------------------
- ____________________________________
- SYMPTOM
-
- The system hangs.
-
- SYMPTOM
-
- When both ends try to send disconnect request, race conditions occur.
-
- SOLUTION
-
- Apply the new SPXS.NLM.
-
- ____________________________________
- SYMPTOM
-
- After SPX terminated a connection, the following abend message was displayed:
-
- MESSAGE
-
- MS Engine was handed an ECB it did not own
-
- CAUSE
-
- A race condition and error exit path existed.
-
- SOLUTION
-
- Make sure the terminate ack was being returned to the LSL through IPX, rather
- than being posted to the application socket.
-
- Apply SPXFIX2.NLM and SPXSFT1.NLM files included in this document.
-
- ____________________________________
- SYMPTOM
-
- When SPX was terminating a connection, it was failing with an 0xEC rather than
- 0xED status.
-
- SOLUTION
-
- Make sure the state check to toss data packets coming into a terminating
- connection did not toss the ACK.
-
- Apply the SPXSFT2.NLM.
-
- ____________________________________
- SYMPTOM
-
- SPX ignored a terminate ACK.
-
- CAUSE
-
- A problem was introduced in SPXDDFIX 1.0.
-
- SOLUTION
-
- Apply SPXDDFIX.NLM 2.0.
-
- SPXDDFIX.NLM 2.0 correctly handles the terminate acknowledgement packet.
-
- ____________________________________
- SYMPTOM
-
- If the session did not exist, SPX failed to interpret terminate ACKs as system
- packets.
-
- CAUSE
-
- When an application errors out because the session does not exist, SPX posts
- the system buffer to the socket rather than returning it to the Link Support
- Layer (LSL).
-
- SOLUTION
-
- Apply the SPXNSFIX.NLM and SPXNSSFT.NLM.
-
- Solution Specifics:
-
- The SPXNSFIX.NLM for NetWare 4.01, 3.12, and 3.11 and SPXNSSFT.NLM fix the way
- that SPX handles the Terminate Acknowledgement packets on sessions that do not
- exist.
-
- ____________________________________________________________
-
- Self-Extracting File Name: STRTL3.EXE Revision: B
-
- Files Included Size Date Time
-
- \
- STRTL3.TXT (This File)
- \3.1X\
- TLI.NLM 12474 09-14-93 10:43a
- IPXS.NLM 8149 08-10-93 7:53a
- SPXS.NLM 24238 05-17-94 9:58a
- STREAMS.NLM 53566 07-20-93 4:19p
- \3.1X\3.11\
- XMDFIX.NLM 1546 02-24-94 8:30a
- SPXFIX2.NLM 1727 11-23-93 9:26a
- PATCHMAN.NLM 9632 02-04-93 10:38a
- SPXDDFIX.NLM 1151 03-10-94 9:44a
- SPXFSFIX.NLM 1155 08-20-93 2:16p
- SPXLISFX.NLM 1016 08-20-93 2:22p
- SPXMSFIX.NLM 988 02-14-94 10:02a
- SPXNSFIX.NLM 1047 05-26-94 8:56a
- \3.1X\3.12\
- PM312.NLM 9221 03-24-94 11:06a
- SPXFIX2.NLM 1035 11-23-93 9:13a
- SPXCONFG.NLM 4162 07-02-93 9:40a
- SPXDDFIX.NLM 1148 03-10-94 9:48a
- SPXNSFIX.NLM 1044 05-26-94 8:45a
- \3.1X\SFTIII.311\
- MSSHIM.NLM 1524 11-09-93 8:11a
- PM311IO.NLM 8335 02-04-94 8:53a
- SPXSFT1.NLM 3003 11-23-93 9:31a
- SPXSFT2.NLM 3115 06-22-94 8:27a
- SPXNSSFT.NLM 2266 05-26-94 9:15a
- \4.01\
- TLI.NLM 24795 09-14-93 10:17a
- IPXS.NLM 10363 08-23-93 8:13a
- SPXS.NLM 34630 03-02-94 1:20p
- PM401.NLM 8113 02-03-94 1:09a
- SPXFIX2.NLM 1023 11-23-93 8:52a
- STREAMS.NLM 63201 09-14-93 10:12a
- NCPIDFIX.NLM 1837 01-18-94 4:22p
- SPXDDFIX.NLM 1112 03-10-94 9:45a
- SPXNSFIX.NLM 1060 05-26-94 8:29a
-
-
- Installation Instructions:
-
- 1. Make a backup copy of each of these NLMs you are currently running.
-
- 2. Copy the new NLMs into the appropriate directories.
-
- 3. The appropriate Patch Manager must be loaded before the patches are
- loaded: PATCHMAN.NLM for NetWare 3.11, PM312 for NetWare 3.12, PM401 for
- NetWare 4.01, MSSHIM.NLM, and PM311IO.NLM for NetWare SFT III 3.11.
-
- 4. Load the patches.
-
- 5. In a NetWare 3.11 environment, make sure to replace the SPXFX2 patch with
- the SPXFX3 patch.
-
- Patch History:
-
- ==================================================
- STRTL2.EXE:
-
- ==============================
- XMDFIX.NLM
- This patch corrects a problem with utilities that use the SPX protocol to
- maintain communication with the server. Typically, the client will lose the
- connection to the server and the following message will be displayed:
-
- MESSAGE
-
- No more response buffers available
-
- This patch also resolves a problem with lost connections never timing out,
- because of infinite transmit retries.
-
- The most common occurrence is with a remote printer (RPRINTER.EXE) losing its
- connection to the print server (PSERVER.NLM); however, this problem may also
- occur with other utilities. The connection is lost when a call to
- SPXSendSequencedPacket() resets a session retransmit count that causes it to
- fail to abort the connection when the connection is broken in one direction
- and maintained in another.
-
- ==============================
- OTHER ISSUES
-
- SPXLISFX.NLM
- This patch resolves an extremely poor performance problem for various backup
- software or any SPX program that is using a limited amount of receive buffers.
- You should use the new SPXLISFX.NLM and SPXS.NLM together.
-
- ==============================
- NetWare 3.11 and NetWare 3.12 Files (These modules will run on either.)
- ____________________________
- STREAMS NLM
-
- This is the standard 3.12 release module.
- ____________________________
- TLI NLM
-
- This patch resolves some internal state checks that caused a Transport Level
- Interface (TLI) application to stop functioning.
- ____________________________
- SPXS NLM
-
- This patch resolves a buffer management problem that caused memory to be lost,
- thus increasing the memory allocated by STREAMS in the short-term memory pool.
-
- This patch also ensures that the SPX connection has the correct watchdog flag
- set that tracks the connection to detect when it fails.
- ____________________________
- IPXS NLM
-
- This patch allows various applications to send larger packets.
-
- ==============================
- NetWare 3.11 Files
- ____________________________
- XMDFIX NLM
-
- If SPX was retransmitting a packet and a new Event Control Block (ECB) was
- handed to SPX to transmit, the retransmit code was reset to the maximum limit,
- thus causing retransmissions to occur possibly indefinitely.
- ____________________________
- SPXFIX2 NLM
-
- If SPX sent a terminate request (DataStream type 0xfe) when the ACK
- (ACKnowledgement code) came back (DataStream type 0xff), the request was
- placed in a receive Event Control Block (ECB) posted by the application.
- However, the code did not release this ECB after it was finished and the ECB
- was lost. SPXFIX1 attempted to rectify this problem; however, it also
- affected the incoming terminate requests that caused ECBs to get posted twice
- to the socket receive list, which caused the ECB to get linked to itself.
- ____________________________
- SPXFSFIX NLM
-
- This patch is a session table bounds check that ensures an invalid session ID
- in a packet from the wire will not cause problems.
- ____________________________
- SPXLISFX NLM
-
- This patch fixes a problem with the SPXListenForConnectedPacket function that
- was not informing the connection partner when the window was reopened after
- being closed. This problem causes terrible performance problems because the
- window would not open again until a WatchDog packet was generated about 3
- seconds later.
- ____________________________
- SPXDDFIX.NLM
-
- This patch fixes a problem with the way SPX handles retried connect requests.
- If the connection had already transitioned into SESSION_TERMINATED when the
- retry came in, the retry was treated as a new connection request.
-
- This patch also fixes a problem where SPX was still acknowledging data packets
- that arrived after SPXTerminateConnection was called. This could lead to
- incorrect handling of the data by the application, leaving both endpoints with
- different information about the state and completeness of the data.
-
- NOTE: This SPX problem is masked by the SPXS.NLM that ships with NetWare
- Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE. The
- fix for this specific issue is addressed by the SPXDDFIX.NLM.
-
- ==============================
- NetWare 3.12 Files
- ____________________________
- SPXDDFIX.NLM
-
- This patch fixes a problem with the way SPX handles retried connect requests.
- If the connection had already transitioned into SESSION_TERMINATED when the
- retry came in, the retry was treated as a new connection request.
-
- This patch also fixes a problem where SPX was still acknowledging data packets
- that arrived after SPXTerminateConnection was called. This could lead to
- incorrect handling of the data by the application that left both endpoints
- with different information about the state and completeness of the data.
-
- NOTE: This SPX problem is masked by the SPXS.NLM that ships with NetWare
- Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE. The
- fix for this specific issue is addressed by the SPXDDFIX.NLM.
-
- ==============================
- NetWare 4.01 Files
- ____________________________
- STREAMS NLM
- This patch solves the following problems:
-
- ■ Some internal timing conditions that caused protocol stacks to stop
- functioning.
-
- ■ A CLIB relationship problem. If a new CLIB was loaded without STREAMS
- being reloaded, then STREAMS somtimes called the wrong address, which would
- probably cause an abend.
-
- ■ A NetWare SAA 1.3 problem. With this patch applied, all Comm Server modules
- can unload properly when the csdown command is issued.
- ____________________________
- TLI NLM
- This patch resolved some internal state checks problems that caused a TLI
- application to stop functioning.
- ____________________________
- IPXS NLM
-
- This patch resolved a problem that caused "System Packet Receive Buffers" to
- be lost.
-
- This patch also resolved a problem that will now allow various applications to
- send larger packets.
- ____________________________
- SPXS NLM
-
- This patch fixes the following problems:
- ■ A lost ECBs problem that occurs when NetWare closes a session and ACKs are
- waiting for a send ESR to complete.
- ■ Watchdog handling by the session not yet accepted.
- ■ Logical size table lookup problems that occur when the initial size was the
- "odd ball" (not matching any of the table sizes).
- ■ Releasing mp (T_CONN_REQ) after acknowledged while in the "old" SPX mode.
- ■ User defined and set data stream-type problems.
- ■ Disconnect problems (NetWare retries if discon is the response to conn ind
- and not timing out on snddis.)
- ■ If the system packet that was sent after the connection request ACK packet
- (session accept packet) has been destined to the "old" SPX then was
- ACKnowledged by the piggybacked ACK, SPX freed this implicit ACK (data packet)
- and treated it as regular ACK.
-
- ==============================
- NetWare 4.01
- ____________________________
- SPXDDFIX.NLM
-
- This patch fixes a problem with the way SPX handles retried connect requests.
- If the connection had already transitioned into SESSION_TERMINATED when the
- retry came in, the retry was treated as a new connection request.
-
- This patch also fixes a problem where SPX was still acknowledging data packets
- that arrived after SPXTerminateConnection was called. This could lead to
- incorrect handling of the data by the application, which left both endpoints
- with different information about the state and completeness of the data.
-
- NOTE: This SPX problem is masked by the SPXS.NLM that ships with NetWare
- Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE. The
- fix for this specific issue is addressed by the SPXDDFIX.NLM.
-
- ----------------------------------------------------------------
- Any trademarks referenced in this document are the property of their
- respective owners. Consult your product manuals for complete trademark
- information.
- ----------------------------------------------------------------
-
-
-
-